Modern digital electronic circuits and systems transmit or convey sequences of binary values, commonly referred to as bit sequences or digital signals. These bit sequences are often conveyed as voltage waveforms, wherein the voltage amplitude for a given time period corresponds to a binary logic value at that same time period. Each time period is typically referred to as a “bit.” Accordingly, a digital signal appears as a voltage waveform in the signal lines and transmission channels of electronic systems. As a digital signal is transmitted through a circuit, various effects may cause the signal to degrade, often to the point that errors occur. The quality of the digital signal after it has been transmitted through the channel is often referred as the signals integrity, or signal integrity.
Various means exist for quantifying signal integrity, such as, for example, the bit error rate. Bit error rate measures the errors within a digital signal as defined by the ratio of incorrectly received bits to the total number of bits transmitted. Signal integrity is quantified by fidelity. In general, signal fidelity measure how closely an input signal corresponds to an output signal. Fidelity may also be used in the context of the transmission channel, where the fidelity measures how closely the output of the channel matches the input to the channel. Signal integrity has become increasingly important as the physical dimensions of new devices shrink while the speed with which these new devices operate increases. As a result, virtually all modern electronic circuits are designed with signal integrity in mind.
Designers often employ techniques to assist in optimizing the signal integrity of their designs. Various techniques that simulate or predict the signal integrity of pathways used to transmit signals within a circuit are typically employed. In many cases, these techniques are used prior to the circuit ever being manufactured. By adding simulation techniques to the design phase of a devices development, signal integrity problems can often be identified before the device is ever manufactured. For example, simulation tools can assist the designer in accounting for issues that commonly cause signal degradation, such as ringing, crosstalk, noise, ground bounce, or inter-symbol interference.
Integrated circuit (IC) design and printed circuit board (PCB) design are two areas where electronic design automation tools are commonly used to analyze, correct, or prevent signal integrity problems. In particular, the pathways that transmit signals between various components on a printed circuit board or within an integrated circuit, often referred to as channels, may be analyzed for signal integrity problems. For example, the signal integrity of a channel between a driver and a buffer of a printed circuit board (PCB) layout may be analyzed. It may be advantageous for a designer to perform this analysis so that the bit error rate of the channel may be accurately predicted and then subsequent design changes may be made based in part upon this prediction with the intent of reducing the bit error rate prior to manufacturing.
As discussed above, a digital signal is a series or sequence of bits. As further stated above, it is often a design goal that the integrity with which a channel transmits a digital signal is greater than a predefined threshold. In order to assist in reaching these design goals, it is often advantageous to determine the characteristic response of the channel under test. More specifically, the response of the channel to an isolated transition, such as, for example, from a logic 0 to a logic 1 may be determined Alternatively, the response of the channel to an impulse may be determined. The channel's response to an isolated pulse is often referred to as the “Dirac response” or “impulse response.” As those of skill in the art will appreciate, the Dirac response is the response of the channel when presented with a short duration (i.e. a single bit or similar) pulse. For example, the input pulse may be a single bit length input of logic 1 followed by multiple bits of logic 0.
The characteristic response of a circuit channel is often determined by simulating the channel's response to the particular input (e.g. an impulse) or by applying the particular input to the device and measuring its output. Once the characteristic response is known, designers may predict the behavior of the transmit channel from the known response. The behavior of the transmit channel may then be analyzed to ensure that signal integrity requirements are met as described above.
Many transmit channels in modern circuit designs are either driven by or drive non-linear devices. The presence of non-linear devices introduces non-linear characteristics into a channel's response. These non-linear characteristics make determination of the characteristic response difficult. More specifically, many non-linear devices require a warming up period before they enter normal operation mode, often referred to as steady state mode. Additionally, many non-linear devices do not allow inputs with a significant number of repeated logical values.